/* 
 * File:   SystemIOLogger.cpp
 * Author: Ben
 * 
 * Created on April 29, 2013, 5:54 PM
 */

#include "SystemIOLogger.h"
#include <iostream>

SystemIOLogger::SystemIOLogger() {
}

SystemIOLogger::SystemIOLogger(const SystemIOLogger& orig) {
}

SystemIOLogger::~SystemIOLogger() {
}

void SystemIOLogger::log(const ILoggable &msg) const {
    const int level = msg.getLevel();
    if (level >= 0) {
        switch (level) {
            case 0:
                msg.log(std::wcout);
                break;
            case 1:
                msg.log(std::wcout);
                break;
            case 2:
                msg.log(std::wcerr);
                break;
            default:
                msg.log(std::wcout);
        }
    }
}
//*std::wostream SystemIOLogger::streams[3] = {
//    &std::wcout,
//    &std::cerr,
//    &std::cerr
//};